并发和并行有什么区别?
例子值得赞赏。
并发是指两个或多个任务可以在重叠的 时间段内 启动、运行和完成。这并不一定意味着它们会同时 运行 。例如,单核机器上的 多任务处理。
并行 性是指任务 实际上 同时运行,例如,在多核处理器上。
引用Sun 的 多线程编程指南 :
并发:当至少有两个线程在进行时存在的条件。一种更通用的并行形式,可以将时间分片作为一种虚拟并行形式。
并行性:当至少两个线程同时执行时出现的情况。